package session.stateless;

import entity.Address;
import java.util.ArrayList;
import javax.ejb.Remote;
import entity.Customer;
import entity.Inquiry;
import java.util.List;


@Remote
public interface CustomerSessionBeanRemote {
    public Customer getCustomerByEmail(String email);
    public void addCustomer(String userId, String email, String firstName, String lastName, String company, String title, String status, Integer phone, Address companyAddress, Double revenue, String description, 
           Integer numEmployee, String industry, ArrayList <Address> addresses,  String type, Boolean assigned, List<Inquiry> inquiries) ;
    public ArrayList <Customer> getCustomers ();
    public ArrayList <Customer> getCustomers (String userId);
    public ArrayList <Customer> getCustomers (Boolean type, int action);
    public Customer getCustomer (Long custId);
    public Customer getCustomer (String email, Boolean t);
    public void updateCustomer (Long custId, String userId, String email, String firstName, String lastName, String company, String title,String status, Integer phone, Address companyAddress, Double revenue, String description, 
           Integer numEmployee, String industry, ArrayList <Address> addresses,  String type, Boolean assigned);
    public void assignExecutive (Long custId, String userId);
    public void unassignCustomers (String userId);
    public void tempDeleteCustomer(Long custId);
}
